Classe de conexão com banco de dados PostGreSQL [golfinho/Elefante]
Publicado por Emiliano Eloi Silva Barbosa 04/04/2007
[ Hits: 12.057 ]
Homepage: http://emilianoeloi.com.br
Tradução do script php de leo genilhu:
http://www.vivaolinux.com.br/scripts/verScript.php?codigo=257
Classe de conexão com banco de dados PostGreSQL, com métodos de inserção e atualização de query's.
Ótimo para quem esta iniciando OOP.
class database{
var $db_HOST = "";
var $db_PORT = "";
var $db_USER = "";
var $db_PASS = "";
var $db = "";
var $CONST_ERRO = "erro ao conectar no nosso banco";
var $dbc;
var $last_id;
function database($db, $user, $pass="nopass",$host="localhost", $port=5432){
$this->db_HOST=$host;
$this->db_PORT=$port;
$this->db_USER=$user;
$this->db_PASS=$pass;
$this->db=$db;
$this->connect_db();
}
function connect_db(){
$connect_string = "host=".$this->db_HOST." port=".$this->db_PORT." user=".$this->db_USER." password=".$this->db_PASS." dbname=".$this->db;
$this->dbc = pg_connect($connect_string);
return $dbc;
}
function delete_db($table,$id){
$Campo_id = $this->getPrimaryKey($table);
$tmp="delete from $table where $Campo_id='$id'";
$sts = pg_query($this->dbc,$tmp) or die($this->CONST_ERRO . pg_last_error());
return $sts ;
}
function close_db (){
pg_close($this->dbc);
}
function insere_db($campos,$valores,$tab){
$inicio="INSERT INTO $tab(";
$meio=") VALUES (";
$fim=")";
$valor = sizeof($campos);
$strc="";
for($i=0;$i <= ($valor-1);$i++){
$strc.="$campos[$i]";
if($i != ($valor-1)){
$strc.=",";
}
}
$strv="";
for($k=0;$k <= ($valor-1);$k++){
$strv.="'$valores[$k]'";
if($k != ($valor-1)){
$strv.=",";
}
}
$insere="$inicio$strc$meio$strv$fim";
$this->query_db($insere);
$this->setLastID($tab);
}
function query_db($sql){
return pg_query($this->dbc,$sql) or die($this->CONST_ERRO . pg_last_error());
}
function reg_db($table){
$tmp="select * from $table";
$sts = pg_query($this->dbc,$tmp) or die($this->CONST_ERRO . pg_last_error());
$num = pg_num_rows($sts);
return($num);
}
function getPrimaryKey($table){
$sql = "select indexdef from pg_indexes where tablename = '$table' and indexname LIKE '%pkey';";
$res = pg_query($this->dbc,$sql) or die($this->CONST_ERRO . pg_last_error());
$resultado = pg_fetch_result($res, 'indexdef');
$arr_temp = explode("(",$resultado);
$arr_temp2 = $arr_temp[1];
$arr_temp = explode(")",$arr_temp2);
return $arr_temp[0];
}
function setLastID($table){
$sequence_name = $table . "_" . $this->getPrimaryKey($table) . "_seq";
$sql = "select currval('$sequence_name') AS lastid";
$res = pg_query($this->dbc,$sql) or die($this->CONST_ERRO . pg_last_error());
$this->last_id = pg_fetch_result($res,'lastid');
}
function id_db(){
return $this->last_id;
}
};
Passe a data no formato aaaa-dd-mm e retornará dd/mm/aaaa.
Classe de conexão ao banco usando PDO
Sistema que simula bd com arquivo TXT
protegendo suas páginas de maneira eficiente
Classe de conexao com banco de dados mysql
Nenhum comentário foi encontrado.
Berry Bank: Criando um Banco Digital Gamificado para seus Filhos com Gentoo, Flask e Tailscale
Papagaiando o XFCE com temas e recursos
Recuperando arquivos com o Photorec de discos zoados
Usando o --load-average no Gentoo para evitar OOM Kill
Instalando o COSMIC DE no Gentoo (systemd)
Quando vocês pararam de testar distros? (24)
Ajudante para criar dicas e artigos no VOL (6)
Problemas com o "startx&... no Slackware (13)









